#include <windows.h>


/************************************************************************/
/* Debug Zones definitions.                                             */
/************************************************************************/

/* Debug zones: */
#define ZONE_NONE_SET        0x0000
#define ZONE_ERROR            DEBUGZONE(0)
#define ZONE_ERROR_SET        0x0001
#define ZONE_WARNING        DEBUGZONE(1)
#define ZONE_WARNING_SET    0x0002
#define ZONE_INIT            DEBUGZONE(2)
#define ZONE_INIT_SET        0x0004
#define ZONE_INFO            DEBUGZONE(3)
#define ZONE_INFO_SET        0x0008
#define ZONE_DETAILED        DEBUGZONE(4)
#define ZONE_DETAILED_SET    0x0010
#define ZONE_PHY            DEBUGZONE(5)
#define ZONE_PHY_SET        0x0020
#define ZONE_ALL_SET        0xFFFF /* All of the zones */

#ifdef ENABLE_LOGS

#ifdef LOG_TO_FILE

    #define REGISTERZONES(hMod)
    #define DBGMSG(m, s) ((m & dpCurSettings.ulZoneMask) ? (LogStrToFile s),1:0)

#else
    #if defined(DEBUG)

        #define REGISTERZONES(hMod) DEBUGREGISTER(hMod)
        #define DBGMSG                DEBUGMSG

    #else

        #define REGISTERZONES(hMod) RETAILREGISTERZONES(hMod)
        #define DBGMSG                RETAILMSG

    #endif
#endif

#else

    #define REGISTERZONES(hMod)
    #define DBGMSG

#endif

extern DBGPARAM dpCurSettings;


// The following define are used for printing and are mandatory for compilation.
#define TXT TEXT
#define PRN_DBG(str)    DBGMSG(ZONE_DETAILED, str)
#define PRN_ERR(str)    DBGMSG(ZONE_ERROR, str)

